<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <link rel="stylesheet" href="./iconfont/iconfont.css">
  <style>
    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    ul {
      list-style: none;
    }

    a {
      text-decoration: none;
    }

    img {
      width: 100%;
      vertical-align: middle;
    }

    .box {
      width: 1110px;
      height: 247px;
      margin: 20px auto;
      /* ps */
      /* background-color: skyblue; */
    }

    .box li {
      position: relative;
      overflow: hidden;
      float: left;
      width: 350px;
      height: 247px;
      margin-right: 30px;
      /* ps */
      /* background-color: orange; */
    }

    .box li:last-child {
      margin-right: 0;
    }

    .box .pic {
      transition: all .5s;
    }

    .box li:hover .pic {
      transform: scale(1.1);
    }

    .box .txt {
      position: absolute;
      left: 0;
      bottom: -50px;
      width: 350px;
      height: auto;
      padding: 20px 30px;
      z-index: 1;
      color: #fff;
      /* 这里不使用all的原因是：上面设置了padding，在浏览器重新加载的时候由于初始并没有padding，后面加了padding之后，transition执行时发现变化了，文字就会左右乱窜 */
      /* 所以还是指定一下谁过渡会较好 */
      /* transition: all .5s; */
      transition: transform .5s;
    }

    .box li:hover .txt {
      /* 二者选一 */
      /* bottom: 0; */
      transform: translateY(-50px);
    }

    .box .txt h4 {
      font-size: 14px;
      font-weight: 400;
      line-height: 2em;
      color: #fff;
    }

    .box .txt h5 {
      margin-bottom: 40px;
      font-size: 18px;
      line-height: 1.5em;
      color: #fff;
    }

    .box .txt p {
      color: #fff;
      font-size: 14px;
      line-height: 1.5em;
    }

    .box .txt p .iconfont {
      color: #c7000b;
      vertical-align: bottom;
      font-size: 20px;
      font-weight: 700;
    }

    .box .mask {
      position: absolute;
      top: 0;
      left: 0;
      width: 350px;
      height: 247px;
      background-image: linear-gradient(
        transparent,
        rgba(0, 0, 0, .6)
      );
      opacity: 0;
      transition: all .5s;
    }

    .box li:hover .mask {
      opacity: 1;
    }
  </style>
</head>

<body>
  <div class="box">
    <ul>
      <li>
        <a href="#">
          <div class="pic">
            <img src="./images/5g.jpg" alt="">
          </div>
          <div class="txt">
            <h4>趋势洞察</h4>
            <h5>跨越商业裂谷，共创5G新价值</h5>
            <p>
              <span>了解更多</span>
              <i class="iconfont icon-icon-test61"></i>
            </p>
          </div>
          <div class="mask"></div>
        </a>
      </li>
      <li>
        <a href="#">
          <div class="pic">
            <img src="./images/idc-wp.jpg" alt="">
          </div>
          <div class="txt">
            <h4>趋势洞察</h4>
            <h5>跨越商业裂谷，共创5G新价值</h5>
            <p>
              <span>了解更多</span>
              <i class="iconfont icon-icon-test61"></i>
            </p>
          </div>
          <div class="mask"></div>
        </a>
      </li>
      <li>
        <a href="#">
          <div class="pic">
            <img src="./images/smart-shenzhen.jpg" alt="">
          </div>
          <div class="txt">
            <h4>趋势洞察</h4>
            <h5>跨越商业裂谷，共创5G新价值</h5>
            <p>
              <span>了解更多</span>
              <i class="iconfont icon-icon-test61"></i>
            </p>
          </div>
          <div class="mask"></div>
        </a>
      </li>
    </ul>
  </div>
</body>

</html>